﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CLUBsInterpreter.ObjectTypes
{
	class CLUBsNull : CLUBsObject
	{
		/**
		 * <summary>
		 * Default constructor creates an empty board, setting default properties.
		 * </summary>
		 **/
		public CLUBsNull()
		{
			// Set the object identifier type
			ObjectIdentifierType = AST.IdentifierType.Null;
			// SPECIFY STANDARD ENVIRONMENT
		}

		/**
		 * <see cref="CLUBsObject.CopyValueFromObject"/>
		 **/
		public override void CopyValueFromObject(CLUBsObject obj)
		{
			LocalVariables.Clear();
			foreach (KeyValuePair<string, CLUBsObject> var in obj.LocalVariables)
			{
				LocalVariables[var.Key] = CLUBsObject.GenerateSimpleObject(var.Value.ObjectIdentifierType);
				LocalVariables[var.Key].CopyValueFromObject(var.Value);
			}
		}
	}
}
